define(['jquery','mage/translate','jquery/ui','slick'],function($){return function(widget){$.widget('mage.iasMenu',widget,{options:{accordionMenuOnMobileDelayEffect:0,accordionMenuOnMobileClass:'accordion-menu-mobile',},_close:function(closeMenu){var menu=closeMenu;if(!menu){menu=this.element;} if((this.viewportActive!==3&&this.options.onlyFirstLevelDesktop)){menu.removeClass(this.options.activeClass);if(!closeMenu){menu.find('li.level0 '+this.options.parentContent).hide();menu.find('li.level0 '+this.options.parent+' '+this.options.parentContent).show();}else{menu.find(this.options.parentContent).hide();menu.find(this.options.parent+' '+this.options.parentContent).show();}}else{if(this.viewportActive===3){var $this=this,accordionMenuOnMobile=false;if($('.'+$this.options.accordionMenuOnMobileClass).length>0){$this.options.mobileHideSubmenuDelay=0;accordionMenuOnMobile=true;} setTimeout(function(){menu.removeClass($this.options.activeClass);if(accordionMenuOnMobile){menu.find($this.options.parentContent+', '+$this.options.parent+' '+$this.options.parentContent).slideUp($this.options.accordionMenuOnMobileDelayEffect);}else{menu.find($this.options.parentContent+', '+$this.options.parent+' '+$this.options.parentContent).hide();}},$this.options.mobileHideSubmenuDelay);}else{menu.removeClass(this.options.activeClass);menu.find(this.options.parentContent+', '+this.options.parent+' '+this.options.parentContent).hide();}} menu.find('.'+this.options.activeClass).removeClass(this.options.activeClass);menu.find('.'+this.options.activeTriggerClass).removeClass(this.options.activeTriggerClass);menu.find('.'+this.options.activeContentClass).removeClass(this.options.activeContentClass);if(this.element.find('.'+this.options.activeClass).length===0){this.body.removeClass(this.options.navOpenBodyClass);}},_open:function(openMenu){var accordionMenuOnMobile=false;if($('.'+this.options.accordionMenuOnMobileClass).length>0){accordionMenuOnMobile=true;} this.body.addClass(this.options.navOpenBodyClass);openMenu.addClass(this.options.activeClass);openMenu.find(this.options.parentTrigger).addClass(this.options.activeTriggerClass);openMenu.find(this.options.parentContent).addClass(this.options.activeContentClass);if(accordionMenuOnMobile){openMenu.find(this.options.parentContent).slideDown(this.options.accordionMenuOnMobileDelayEffect);}else{openMenu.find(this.options.parentContent).show();} $(openMenu).find('.slick-initialized').slick('refresh');},_toggleMobileMode:function(){this.element.addClass('menu-initialized');this._unbindEvents();var $parentEventTrigger=this.options.parent;var $this=this;var events={};events['click '+$parentEventTrigger+' '+this.options.parentTrigger]=function(event){event.preventDefault();event.stopPropagation();var $parent=$(event.target);if(!$parent.is($this.options.parent)){$parent=$(event.target).closest($this.options.parent);} if($this.options.mobile.closeSiblings){$this._closeSiblings($parent);} if($parent.hasClass($this.options.activeClass)){$this._close($parent);}else{$this._open($parent);}};events['click '+this.options.parent+' '+this.options.parentContent+' .menu-title .submenu-title']=function(event){event.preventDefault();var $parent=$(event.target).closest($this.options.parent);$this._closeSiblings($parent);$this._close($parent);};events['swiperight '+this.options.parent+' '+this.options.parentContent]=function(event){if($(event.target).closest('.navigation-category-extra-block-mobile').length===0&&$(event.target).closest('.cms-category-navigation-slider').length===0&&$(event.target).closest('.cms-category-navigation-stories').length===0){event.preventDefault();var $parent=$(event.target).closest($this.options.parent);$this._closeSiblings($parent);$this._close($parent);}};this._on(events);if(this.options.mobile.viewAll){this._setViewAll();}},toggle:function(e){var $this=this;if($(e.target).closest('.navigation-category-extra-block-mobile').length===0&&$(e.target).closest('.cms-category-navigation-slider').length===0&&$(e.target).closest('.cms-category-navigation-stories').length===0){$this._close();if($('html').hasClass('nav-open')){$('html').removeClass('nav-open');$this.body.removeClass(this.options.navTypeOpenBodyClass);setTimeout(function(){$('html').removeClass('nav-before-open');},$this.options.mobileHideAnimation);}else{$('html').addClass('nav-before-open');setTimeout(function(){$('html').addClass('nav-open');$this.body.addClass($this.options.navTypeOpenBodyClass);},42);}}}});return $.mage.iasMenu;};});